﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Apollo
{
    [AttributeUsage(AttributeTargets.Method)]
    public class ActionAttribute : Attribute
    {
        public string Name { get; set; }
        public ActionHandlingType HandlingType { get; set; }
        public int Priority { get; set; }

        public ActionAttribute(string actionName, ActionHandlingType handlingType) 
            : this (actionName, handlingType, ActionSubscription.DEFAULT_PRIORITY) {
        }

        public ActionAttribute(string actionName, ActionHandlingType handlingType, int priority) { 
            this.Name = actionName;
            this.HandlingType = handlingType;
            this.Priority = priority;
        }
    }
}
